package com.bsg.upm.dto;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * 用户角色数据传输对象
 * 
 * @author HCK
 *
 */
public class UserRoleDto implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	/**
	 * 角色代码
	 */
	private String code;

	/**
	 * 角色名称
	 */
	private String name;

	/**
	 * 角色级别
	 */
	private Integer level;

	/**
	 * 数据范围
	 */
	private String dataScope;

	/**
	 * 数据范围表示
	 */
	private String dataScopeText;

	/**
	 * 角色描述
	 */
	private String description;

	/**
	 * 用户
	 */
	private List<UserDto> users = new ArrayList<>();

	/**
	 * 获取角色代码
	 * 
	 * @return code 角色代码
	 */
	public String getCode() {
		return code;
	}

	/**
	 * 设置角色代码
	 * 
	 * @param code
	 *            角色代码
	 */
	public void setCode(String code) {
		this.code = code;
	}

	/**
	 * 获取角色名称
	 * 
	 * @return name 角色名称
	 */
	public String getName() {
		return name;
	}

	/**
	 * 设置角色名称
	 * 
	 * @param name
	 *            角色名称
	 */
	public void setName(String name) {
		this.name = name;
	}

	/**
	 * 获取角色级别
	 * 
	 * @return level 角色级别
	 */
	public Integer getLevel() {
		return level;
	}

	/**
	 * 设置角色级别
	 * 
	 * @param level
	 *            角色级别
	 */
	public void setLevel(Integer level) {
		this.level = level;
	}

	/**
	 * 获取数据范围
	 * 
	 * @return dataScope 数据范围
	 */
	public String getDataScope() {
		return dataScope;
	}

	/**
	 * 设置数据范围
	 * 
	 * @param dataScope
	 *            数据范围
	 */
	public void setDataScope(String dataScope) {
		this.dataScope = dataScope;
	}

	/**
	 * 获取数据范围表示
	 * 
	 * @return dataScopeText 数据范围表示
	 */
	public String getDataScopeText() {
		return dataScopeText;
	}

	/**
	 * 设置数据范围表示
	 * 
	 * @param dataScopeText
	 *            数据范围表示
	 */
	public void setDataScopeText(String dataScopeText) {
		this.dataScopeText = dataScopeText;
	}

	/**
	 * 获取角色描述
	 * 
	 * @return description 角色描述
	 */
	public String getDescription() {
		return description;
	}

	/**
	 * 设置角色描述
	 * 
	 * @param description
	 *            角色描述
	 */
	public void setDescription(String description) {
		this.description = description;
	}

	/**
	 * 获取用户
	 * 
	 * @return users 用户
	 */
	public List<UserDto> getUsers() {
		return users;
	}

	/**
	 * 设置用户
	 * 
	 * @param users
	 *            用户
	 */
	public void setUsers(List<UserDto> users) {
		this.users = users;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "UserRoleDto [code=" + code + ", name=" + name + ", level=" + level + ", dataScope=" + dataScope
				+ ", dataScopeText=" + dataScopeText + ", description=" + description + ", users=" + users + "]";
	}

}
